package com.ruoyi.common.core.domain.entity;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 功能模块-角色-数据权限关联表 sys_module
 */
public class SysModule extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 主键id */
    @Excel(name = "主键ID", cellType = Excel.ColumnType.NUMERIC)
    private Long moduleId;
    /** 功能模块名称 */
    @Excel(name = "功能模块名称")
    private String moduleName;
    /** 关联表名 */
    @Excel(name = "关联表名")
    private String tableName;
    /** 关联角色id */
    @Excel(name = "关联角色ID", cellType = Excel.ColumnType.NUMERIC)
    private Long roleId;
    /** 关联角色名称 */
    @Excel(name = "关联角色名称")
    private String roleName;
    /** 数据权限类型 */
    @Excel(name = "数据权限类型")
    private Integer dataScope;
    /** 自定义数据权限表达式 */
    @Excel(name = "自定义数据权限表达式")
    private String scopeExpr;
    /** 数据权限优先级 */
    @Excel(name = "数据权限优先级")
    private Integer level;

    public Long getModuleId() {
        return moduleId;
    }
    public void setModuleId(Long moduleId) {
        this.moduleId = moduleId;
    }
    public String getModuleName() {
        return moduleName;
    }
    public void setModuleName(String moduleName) {
        this.moduleName = moduleName;
    }
    public String getTableName() {
        return tableName;
    }
    public void setTableName(String tableName) {
        this.tableName = tableName;
    }
    public Long getRoleId() {
        return roleId;
    }
    public void setRoleId(Long roleId) {
        this.roleId = roleId;
    }
    public String getRoleName() { return roleName; }
    public void setRoleName(String roleName) { this.roleName = roleName; }
    public Integer getDataScope() {
        return dataScope;
    }
    public void setDataScope(Integer dataScope) {
        this.dataScope = dataScope;
    }
    public String getScopeExpr() {
        return scopeExpr;
    }
    public void setScopeExpr(String scopeExpr) {
        this.scopeExpr = scopeExpr;
    }
    public Integer getLevel() {
        return level;
    }
    public void setLevel(Integer level) {
        this.level = level;
    }

    @Override
    public String toString() {
        return "SysModule{" +
                "moduleId=" + moduleId +
                ", moduleName='" + moduleName + '\'' +
                ", tableName='" + tableName + '\'' +
                ", roleId=" + roleId +
                ", roleName='" + roleName + '\'' +
                ", dataScope=" + dataScope +
                ", scopeExpr='" + scopeExpr + '\'' +
                ", level=" + level +
                '}';
    }
} 